*** Settings ***
Library           FakerLibrary    zh-CN
Resource          合同审批页面元素.txt
Resource          ../费用支出管理/费用报销/通用费用报销页面元素.txt
Library           SeleniumLibrary
Library           String
Resource          ../采购管理/采购目录.txt
Resource          ../采购管理/采购品目.txt
Resource          ../常用变量.txt
Resource          ../基本配置.txt
Resource          ../浏览器变量.txt
Library           AutoItLibrary
Resource          ../常用变量.txt
Resource          ../费用支出管理/申请-事前/事前申请页面元素.txt
Resource          ../费用支出管理/申请-事前/因公出差页面元素.txt
Resource          ../费用支出管理/申请-事前/事前申请页面元素.txt
Resource          ../费用支出管理/申请-事前/事前申请总单据-事前申请.txt
Resource          ../费用支出管理/借还款管理/往来款申请页面元素.txt
Resource          ../费用支出管理/费用报销/组织会议报销页面元素.txt
Resource          合同审批页面元素.txt

*** Test Cases ***
普通合同添加成功
    [Setup]    login
    log    添加普通合同
    goto    ${contract_common_add}
    sleep    3
    合同审批-选择科技管理
    Comment    合同审批-设置普通合同
    sleep    3
    ${contract_name}    设置申请理由-根据时间格式定制
    合同审批-设置合同名称    ${contract_name}
    合同审批-选择合同类型-工程合同
    合同审批-选择合同性质-长期合同
    sleep    3
    合同审批-设置采购需求信息
    sleep    3
    合同审批-选择签订人
    sleep    3
    合同审批-选择签订日期
    sleep    3
    合同审批-选择合同结束日期
    ${contract_warranty}    设置两位随机数
    合同审批-选择质保期    ${contract_warranty}
    合同审批-选择合同份数    ${contract_warranty}
    合同审批-设置合同保修期    ${contract_warranty}
    sleep    3
    合同审批-设置维保-是
    合同审批-设置保函-是
    合同审批-设置维保金-是
    合同审批-设置合同备注    ${contract_name}
    sleep    5
    合同审批-设置预付款日期
    sleep    3
    合同审批-设置预付款金额    ${contract_warranty}
    合同审批-设置预付款条件    ${contract_name}
    合同审批-设置预付款需要验收
    sleep    3
    ${contract_qname}    name
    合同审批-设置签约方名称    ${contract_qname}
    合同审批-设置签约方联系人    ${contract_qname}
    ${phone_number}    Phone Number
    合同审批-设置签约方联系电话    ${phone_number}
    ${contract_bank}    设置开户行-根据时间格式定制
    合同审批-设置签约方开户行    ${contract_bank}
    合同审批-设置签约方银行账号    ${contract_bank}
    事情申请暂存
    sleep    3
    goto    ${contract_list}
    sleep    3
    合同列表查询    ${contract_name}
    sleep    3
    组织会议报销添加成功断言    ${contract_name}
    [Teardown]    close

普通合同提交成功
    [Setup]    login
    log    添加普通合同
    goto    ${contract_common_add}
    sleep    3
    合同审批-选择科技管理
    Comment    合同审批-设置普通合同
    sleep    3
    ${contract_name}    设置申请理由-根据时间格式定制
    合同审批-设置合同名称    ${contract_name}
    合同审批-选择合同类型-工程合同
    合同审批-选择合同性质-长期合同
    sleep    3
    合同审批-设置采购需求信息
    sleep    3
    合同审批-选择签订人
    sleep    3
    合同审批-选择签订日期
    sleep    3
    合同审批-选择合同结束日期
    ${contract_warranty}    设置两位随机数
    合同审批-选择质保期    ${contract_warranty}
    合同审批-选择合同份数    ${contract_warranty}
    合同审批-设置合同保修期    ${contract_warranty}
    sleep    3
    合同审批-设置维保-是
    合同审批-设置保函-是
    合同审批-设置维保金-是
    合同审批-设置合同备注    ${contract_name}
    sleep    5
    合同审批-设置预付款日期
    sleep    3
    合同审批-设置预付款金额    ${contract_warranty}
    合同审批-设置预付款条件    ${contract_name}
    合同审批-设置预付款需要验收
    sleep    3
    ${contract_qname}    name
    合同审批-设置签约方名称    ${contract_qname}
    合同审批-设置签约方联系人    ${contract_qname}
    ${phone_number}    Phone Number
    合同审批-设置签约方联系电话    ${phone_number}
    ${contract_bank}    设置开户行-根据时间格式定制
    合同审批-设置签约方开户行    ${contract_bank}
    合同审批-设置签约方银行账号    ${contract_bank}
    事情申请提交
    sleep    3
    goto    ${contract_list}
    sleep    3
    合同列表查询    ${contract_name}
    sleep    3
    组织会议报销添加成功断言    ${contract_name}
    [Teardown]    close

普通合同提交成功-买卖合同
    [Setup]    login
    log    添加普通合同
    goto    ${contract_common_add}
    sleep    3
    log    默认是买卖合同
    Comment    合同审批-设置普通合同
    sleep    3
    ${contract_name}    设置申请理由-根据时间格式定制
    合同审批-设置合同名称    ${contract_name}
    合同审批-选择合同类型-工程合同
    合同审批-选择合同性质-长期合同
    sleep    3
    合同审批-设置采购需求信息
    sleep    3
    合同审批-选择签订人
    sleep    3
    合同审批-选择签订日期
    sleep    3
    合同审批-选择合同结束日期
    ${contract_warranty}    设置两位随机数
    合同审批-选择质保期    ${contract_warranty}
    合同审批-选择合同份数    ${contract_warranty}
    合同审批-设置合同保修期    ${contract_warranty}
    sleep    3
    合同审批-设置维保-是
    合同审批-设置保函-是
    合同审批-设置维保金-是
    合同审批-设置合同备注    ${contract_name}
    sleep    5
    合同审批-设置预付款日期
    sleep    3
    合同审批-设置预付款金额    ${contract_warranty}
    合同审批-设置预付款条件    ${contract_name}
    合同审批-设置预付款需要验收
    sleep    3
    ${contract_qname}    name
    合同审批-设置签约方名称    ${contract_qname}
    合同审批-设置签约方联系人    ${contract_qname}
    ${phone_number}    Phone Number
    合同审批-设置签约方联系电话    ${phone_number}
    ${contract_bank}    设置开户行-根据时间格式定制
    合同审批-设置签约方开户行    ${contract_bank}
    合同审批-设置签约方银行账号    ${contract_bank}
    事情申请提交
    sleep    3
    goto    ${contract_list}
    sleep    3
    合同列表查询    ${contract_name}
    sleep    3
    组织会议报销添加成功断言    ${contract_name}
    [Teardown]    close

普通合同提交成功-营房建设
    [Setup]    login
    log    添加普通合同
    goto    ${contract_common_add}
    sleep    3
    合同审批-选择营房建设
    Comment    合同审批-设置普通合同
    sleep    3
    ${contract_name}    设置申请理由-根据时间格式定制
    合同审批-设置合同名称    ${contract_name}
    合同审批-选择合同类型-工程合同
    合同审批-选择合同性质-长期合同
    sleep    3
    合同审批-设置采购需求信息
    sleep    3
    合同审批-选择签订人
    sleep    3
    合同审批-选择签订日期
    sleep    3
    合同审批-选择合同结束日期
    ${contract_warranty}    设置两位随机数
    合同审批-选择质保期    ${contract_warranty}
    合同审批-选择合同份数    ${contract_warranty}
    合同审批-设置合同保修期    ${contract_warranty}
    sleep    3
    合同审批-设置维保-是
    合同审批-设置保函-是
    合同审批-设置维保金-是
    合同审批-设置合同备注    ${contract_name}
    sleep    5
    合同审批-设置预付款日期
    sleep    3
    合同审批-设置预付款金额    ${contract_warranty}
    合同审批-设置预付款条件    ${contract_name}
    合同审批-设置预付款需要验收
    sleep    3
    ${contract_qname}    name
    合同审批-设置签约方名称    ${contract_qname}
    合同审批-设置签约方联系人    ${contract_qname}
    ${phone_number}    Phone Number
    合同审批-设置签约方联系电话    ${phone_number}
    ${contract_bank}    设置开户行-根据时间格式定制
    合同审批-设置签约方开户行    ${contract_bank}
    合同审批-设置签约方银行账号    ${contract_bank}
    事情申请提交
    sleep    3
    goto    ${contract_list}
    sleep    3
    合同列表查询    ${contract_name}
    sleep    3
    组织会议报销添加成功断言    ${contract_name}
    [Teardown]    close

普通合同提交成功-物资采购
    [Setup]    login
    log    添加普通合同
    goto    ${contract_common_add}
    sleep    3
    合同审批-选择物资采购
    Comment    合同审批-设置普通合同
    sleep    3
    ${contract_name}    设置申请理由-根据时间格式定制
    合同审批-设置合同名称    ${contract_name}
    合同审批-选择合同类型-工程合同
    合同审批-选择合同性质-长期合同
    sleep    3
    合同审批-设置采购需求信息
    sleep    3
    合同审批-选择签订人
    sleep    3
    合同审批-选择签订日期
    sleep    3
    合同审批-选择合同结束日期
    ${contract_warranty}    设置两位随机数
    合同审批-选择质保期    ${contract_warranty}
    合同审批-选择合同份数    ${contract_warranty}
    合同审批-设置合同保修期    ${contract_warranty}
    sleep    3
    合同审批-设置维保-是
    合同审批-设置保函-是
    合同审批-设置维保金-是
    合同审批-设置合同备注    ${contract_name}
    sleep    5
    合同审批-设置预付款日期
    sleep    3
    合同审批-设置预付款金额    ${contract_warranty}
    合同审批-设置预付款条件    ${contract_name}
    合同审批-设置预付款需要验收
    sleep    3
    ${contract_qname}    name
    合同审批-设置签约方名称    ${contract_qname}
    合同审批-设置签约方联系人    ${contract_qname}
    ${phone_number}    Phone Number
    合同审批-设置签约方联系电话    ${phone_number}
    ${contract_bank}    设置开户行-根据时间格式定制
    合同审批-设置签约方开户行    ${contract_bank}
    合同审批-设置签约方银行账号    ${contract_bank}
    事情申请提交
    sleep    3
    goto    ${contract_list}
    sleep    3
    合同列表查询    ${contract_name}
    sleep    3
    组织会议报销添加成功断言    ${contract_name}
    [Teardown]    close

普通合同提交成功-服务管理
    [Setup]    login
    log    添加普通合同
    goto    ${contract_common_add}
    sleep    3
    合同审批-选择服务管理
    Comment    合同审批-设置普通合同
    sleep    3
    ${contract_name}    设置申请理由-根据时间格式定制
    合同审批-设置合同名称    ${contract_name}
    合同审批-选择合同类型-工程合同
    合同审批-选择合同性质-长期合同
    sleep    3
    合同审批-设置采购需求信息
    sleep    3
    合同审批-选择签订人
    sleep    3
    合同审批-选择签订日期
    sleep    3
    合同审批-选择合同结束日期
    ${contract_warranty}    设置两位随机数
    合同审批-选择质保期    ${contract_warranty}
    合同审批-选择合同份数    ${contract_warranty}
    合同审批-设置合同保修期    ${contract_warranty}
    sleep    3
    合同审批-设置维保-是
    合同审批-设置保函-是
    合同审批-设置维保金-是
    合同审批-设置合同备注    ${contract_name}
    sleep    5
    合同审批-设置预付款日期
    sleep    3
    合同审批-设置预付款金额    ${contract_warranty}
    合同审批-设置预付款条件    ${contract_name}
    合同审批-设置预付款需要验收
    sleep    3
    ${contract_qname}    name
    合同审批-设置签约方名称    ${contract_qname}
    合同审批-设置签约方联系人    ${contract_qname}
    ${phone_number}    Phone Number
    合同审批-设置签约方联系电话    ${phone_number}
    ${contract_bank}    设置开户行-根据时间格式定制
    合同审批-设置签约方开户行    ${contract_bank}
    合同审批-设置签约方银行账号    ${contract_bank}
    事情申请提交
    sleep    3
    goto    ${contract_list}
    sleep    3
    合同列表查询    ${contract_name}
    sleep    3
    组织会议报销添加成功断言    ${contract_name}
    [Teardown]    close

普通合同提交成功-其他
    [Setup]    login
    log    添加普通合同
    goto    ${contract_common_add}
    sleep    3
    合同审批-选择其他
    Comment    合同审批-设置普通合同
    sleep    3
    ${contract_name}    设置申请理由-根据时间格式定制
    合同审批-设置合同名称    ${contract_name}
    合同审批-选择合同类型-工程合同
    合同审批-选择合同性质-长期合同
    sleep    3
    合同审批-设置采购需求信息
    sleep    3
    合同审批-选择签订人
    sleep    3
    合同审批-选择签订日期
    sleep    3
    合同审批-选择合同结束日期
    ${contract_warranty}    设置两位随机数
    合同审批-选择质保期    ${contract_warranty}
    合同审批-选择合同份数    ${contract_warranty}
    合同审批-设置合同保修期    ${contract_warranty}
    sleep    3
    合同审批-设置维保-是
    合同审批-设置保函-是
    合同审批-设置维保金-是
    合同审批-设置合同备注    ${contract_name}
    sleep    5
    合同审批-设置预付款日期
    sleep    3
    合同审批-设置预付款金额    ${contract_warranty}
    合同审批-设置预付款条件    ${contract_name}
    合同审批-设置预付款需要验收
    sleep    3
    ${contract_qname}    name
    合同审批-设置签约方名称    ${contract_qname}
    合同审批-设置签约方联系人    ${contract_qname}
    ${phone_number}    Phone Number
    合同审批-设置签约方联系电话    ${phone_number}
    ${contract_bank}    设置开户行-根据时间格式定制
    合同审批-设置签约方开户行    ${contract_bank}
    合同审批-设置签约方银行账号    ${contract_bank}
    事情申请提交
    sleep    3
    goto    ${contract_list}
    sleep    3
    合同列表查询    ${contract_name}
    sleep    3
    组织会议报销添加成功断言    ${contract_name}
    [Teardown]    close

事前合同提交成功
    [Setup]    login
    log    第一步：添加事前申请，需要签订合同
    go to    ${beforeApplyCommon_add}
    sleep    3
    ${applyReason}    common_apply_contract_submit
    close browser
    log    第二步：审核该事前申请
    login-审核流程    cyadmin_cj001    123456
    goto    ${beforeApplyCommon_list}
    log    默认添加了关于[差率费]的项目，此处会自动关联
    sleep    6
    审核流程01
    close browser
    log    第三步：添加事前申请带合同的合同审批
    log    账号登陆
    login
    sleep    3
    goto    ${contract_advance_add}
    sleep    3
    合同审批-选择申请单
    Comment    合同审批-设置普通合同
    sleep    3
    ${contract_name}    设置申请理由-根据时间格式定制
    合同审批-设置合同名称    ${contract_name}
    合同审批-选择合同类型-工程合同
    合同审批-选择合同性质-长期合同
    sleep    3
    合同审批-选择签订人
    sleep    3
    合同审批-选择签订日期
    sleep    3
    合同审批-选择合同结束日期
    ${contract_warranty}    设置两位随机数
    合同审批-选择质保期    ${contract_warranty}
    合同审批-选择合同份数    ${contract_warranty}
    合同审批-设置合同保修期    ${contract_warranty}
    sleep    3
    合同审批-设置维保-是
    合同审批-设置保函-是
    合同审批-设置维保金-是
    合同审批-设置合同备注    ${contract_name}
    sleep    5
    合同审批-设置预付款日期-事前申请
    sleep    3
    合同审批-设置预付款金额-事前申请    ${contract_warranty}
    合同审批-设置预付款条件-事前申请    ${contract_name}
    Comment    合同审批-设置预付款需要验收
    sleep    3
    合同审批-设置添加签约方
    ${contract_qname}    name
    合同审批-设置签约方名称    ${contract_qname}
    合同审批-设置签约方联系人    ${contract_qname}
    ${phone_number}    Phone Number
    合同审批-设置签约方联系电话    ${phone_number}
    ${contract_bank}    设置开户行-根据时间格式定制
    合同审批-设置签约方开户行    ${contract_bank}
    合同审批-设置签约方银行账号    ${contract_bank}
    事情申请提交
    sleep    3
    goto    ${contract_list}
    sleep    3
    合同列表查询    ${contract_name}
    sleep    3
    组织会议报销添加成功断言    ${contract_name}
    [Teardown]    close

事前合同一次性审核成功
    [Setup]    login
    log    第一步：添加事前申请，需要签订合同
    go to    ${beforeApplyCommon_add}
    sleep    3
    ${applyReason}    common_apply_contract_submit
    close browser
    log    第二步：审核该事前申请
    login-审核流程    cyadmin_cj001    123456
    goto    ${beforeApplyCommon_list}
    log    默认添加了关于[差率费]的项目，此处会自动关联
    sleep    6
    审核流程01
    close browser
    log    第三步：添加事前申请带合同的合同审批
    log    账号登陆
    login
    sleep    3
    goto    ${contract_advance_add}
    sleep    3
    ${contract_name}    add_contract_advance_submit
    sleep    3
    close browser
    log    第四步：审核01
    log    合同审批：第一个审核人
    sleep    3
    login-审核流程    cyadmin_cj001    123456
    goto    ${contract_list}
    合同列表查询    ${contract_name}
    log    默认添加了关于[差率费]的项目，此处会自动关联
    sleep    6
    审核流程01
    sleep    3
    goto    ${contract_list}
    sleep    3
    合同列表查询    ${contract_name}
    sleep    3
    组织会议报销添加成功断言    ${contract_name}
    [Teardown]    close

合同备案操作成功
    [Setup]    login
    log    第一步：添加事前申请，需要签订合同
    go to    ${beforeApplyCommon_add}
    sleep    3
    ${applyReason}    common_apply_contract_submit
    close browser
    log    第二步：审核该事前申请
    login-审核流程    cyadmin_cj001    123456
    goto    ${beforeApplyCommon_list}
    log    默认添加了关于[差率费]的项目，此处会自动关联
    sleep    6
    审核流程01
    close browser
    log    第三步：添加事前申请带合同的合同审批
    log    账号登陆
    login
    sleep    3
    goto    ${contract_advance_add}
    sleep    3
    ${contract_name}    add_contract_advance_submit
    sleep    3
    close browser
    log    第四步：审核01
    log    合同审批：第一个审核人
    sleep    3
    login-审核流程    cyadmin_cj001    123456
    goto    ${contract_list}
    合同列表查询    ${contract_name}
    log    默认添加了关于[差率费]的项目，此处会自动关联
    sleep    6
    审核流程01
    sleep    3
    goto    ${contract_list}
    sleep    3
    log    第五步：合同备案
    sleep    3
    goto    ${contract_record_list}
    合同列表查询    ${contract_name}
    sleep    3
    合同设置备案
    sleep    3
    合同备案-保存备案
    sleep    3
    合同设置-确认备案
    sleep    3
    合同备案-保存备案-确认
    sleep    3
    合同列表查询    ${contract_name}
    sleep    3
    组织会议报销添加成功断言    ${contract_name}
    [Teardown]    close

普通合同备案操作成功-仅备案
    [Setup]    login
    log    第一步：添加普通合同
    goto    ${contract_common_add}
    sleep    3
    ${contract_name}    add_contract_common_submit
    sleep    3
    close browser
    log    第二步：审核01
    log    合同审批：第一个审核人
    sleep    3
    login-审核流程    cyadmin_cj001    123456
    goto    ${contract_list}
    sleep    3
    合同列表查询    ${contract_name}
    log    默认添加了关于[差率费]的项目，此处会自动关联
    sleep    6
    审核流程01
    sleep    3
    close browser
    log    第三步：审核02
    log    普通合同审批：第二个审核人
    sleep    3
    login-审核流程    cx001    123456
    goto    ${contract_list}
    sleep    3
    合同列表查询    ${contract_name}
    log    默认添加了关于[差率费]的项目，此处会自动关联
    sleep    6
    审核流程01
    sleep    3
    close browser
    log    第四步：审核03
    log    普通合同审批：第三个审核人
    sleep    3
    login-审核流程    cx002    123456
    goto    ${contract_list}
    sleep    3
    合同列表查询    ${contract_name}
    log    默认添加了关于[差率费]的项目，此处会自动关联
    sleep    6
    审核流程01
    sleep    3
    close browser
    log    第五步：审核04
    log    普通合同审批：第四个审核人
    sleep    3
    login-审核流程    cx003    123456
    goto    ${contract_list}
    sleep    3
    合同列表查询    ${contract_name}
    log    默认添加了关于[差率费]的项目，此处会自动关联
    sleep    6
    审核流程01
    sleep    3
    close browser
    log    第六步：审核05
    log    普通合同审批：第5个审核人
    sleep    3
    login-审核流程    cx004    123456
    goto    ${contract_list}
    sleep    3
    合同列表查询    ${contract_name}
    log    默认添加了关于[差率费]的项目，此处会自动关联
    sleep    6
    审核流程01
    sleep    3
    close browser
    log    第7步：审核06
    log    普通合同审批：第6个审核人
    sleep    3
    login-审核流程    cx005    123456
    goto    ${contract_list}
    sleep    3
    合同列表查询    ${contract_name}
    log    默认添加了关于[差率费]的项目，此处会自动关联
    sleep    6
    审核流程01
    sleep    3
    close browser
    log    第8步：审核07
    log    普通合同审批：第7个审核人
    sleep    3
    login-审核流程    cx006    123456
    goto    ${contract_list}
    sleep    3
    合同列表查询    ${contract_name}
    log    默认添加了关于[差率费]的项目，此处会自动关联
    sleep    6
    审核流程01
    sleep    3
    close browser
    log    第9步：合同备案和确认备案
    login
    sleep    3
    goto    ${contract_record_list}
    sleep    3
    合同列表查询    ${contract_name}
    sleep    3
    合同设置备案
    sleep    3
    合同备案-保存备案
    sleep    3
    合同设置-确认备案
    sleep    3
    合同备案-保存备案-确认
    sleep    3
    [Teardown]    close
